Distributed Mutual Exclusion Based on Causal Ordering
نویسندگان
چکیده
Problem statement: Causality among events, more formally the causal ordering relation, is a powerful tool for analyzing and drawing inferences about distributed systems. The knowledge of the causal ordering relation between processes helps designers and the system itself solve a variety of problems in distributed systems. In distributed algorithms design, such knowledge helped ensure fairness and liveness in distributed algorithms, maintained consistent in distributed databases and helped design deadlock-detection algorithm. It also helped to build a checkpoint in failure recovery and detect data inconsistencies in replicated distributed databases. Approach: In this study, we implemented the causal ordering in Suzuki-Kasami’s token based algorithm in distributed systems. Suzuki-Kasami’s token based algorithm in distributed algorithm that realized mutual exclusion among n processes. Two files sequence numbers were used one to compute the number of requests sent and the other to compute the number of entering in critical section. Results: The causal ordering was guaranteed between requests. If a process Pi requested the critical section before a process Pj, then the process Pi will enter its critical section before the process Pj. Conclusion: The algorithm presented here, assumes that if a request req was sent before a request req’s, then the request req will be satisfied before req’s.
منابع مشابه
An Improved Token-Based and Starvation Free Distributed Mutual Exclusion Algorithm
Distributed mutual exclusion is a fundamental problem of distributed systems that coordinates the access to critical shared resources. It concerns with how the various distributed processes access to the shared resources in a mutually exclusive manner. This paper presents fully distributed improved token based mutual exclusion algorithm for distributed system. In this algorithm, a process which...
متن کاملRelativistic Causal Ordering - A Memory Model for Scalable Concurrent Data Structures
High-performance programs and systems require concurrency to take full advantage of available hardware. However, the available concurrent programming models force a difficult choice, between simple models such as mutual exclusion that produce little to no concurrency, or complex models such as Read-Copy Update that can scale to all available resources. Simple concurrent programming models enfor...
متن کاملGeneralized Construction of Scalable Concurrent Data Structures via Relativistic Programming
We present relativistic programming, a concurrent programming model based on shared addressing, which supports efficient, scalable operation on either uniform shared-memory or distributed sharedmemory systems. Relativistic programming provides a strong causal ordering property, allowing a series of read operations to appear as an atomic transaction that occurs entirely between two ordered write...
متن کاملConstructive and Adaptable Distributed Shared Memory
Distributed shared memory (DSM) is a paradigm for programming distributed systems, which provides an alternative to the message passing model. DSM offers the agents of the system a shared address space through which they can communicate with each other. The main problem of a DSM implementation on top of a message passing system is performance. Performance of an implementacion is closely related...
متن کاملPrioritized Token-Based Mutual Exclusion for Distributed Systems
A number of solutions have been proposed for the problem of mutual exclusion in distributed systems. Some of these approaches have since been extended to a prioritized environment suitable for real-time applications but impose a higher message passing overhead than our approach. We present a new protocol for prioritized mutual exclusion in a distributed environment. Our approach uses a token-ba...
متن کامل